//
//  NSString+Regex.m
//  OMENGO
//
//  Created by 梁尚嘉 on 2016/12/20.
//  Copyright © 2016年 Kamfat. All rights reserved.
//

#import "NSString+Regex.h"

@implementation NSString (Regex)
/**
 *  手机号码验证
 *  @return 格式正确返回true  错误 返回fals
 */
- (BOOL) isMobile
{
    /**
     * 手机号码
     * 移动：134[0-8],135,136,137,138,139,150,151,157,158,159,182,187,188
     * 联通：130,131,132,152,155,156,185,186
     * 电信：133,1349,153,180,189,181(增加)
     */
    NSString * MOBIL = @"^1(3[0-9]|5[0-35-9]|8[025-9])\\d{8}$";
    /**
     10         * 中国移动：China Mobile
     11         * 134[0-8],135,136,137,138,139,150,151,157,158,159,182,187,188
     12         */
    NSString * CM = @"^1(34[0-8]|(3[5-9]|5[017-9]|8[2378])\\d)\\d{7}$";
    /**
     15         * 中国联通：China Unicom
     16         * 130,131,132,152,155,156,185,186
     17         */
    NSString * CU = @"^1(3[0-2]|5[256]|8[56])\\d{8}$";
    /**
     20         * 中国电信：China Telecom
     21         * 133,1349,153,180,189,181(增加)
     22         */
    NSString * CT = @"^1((33|53|8[019])[0-9]|349)\\d{7}$";

    NSString *PC = @"^1([3-8])\\d{1} \\d{4} \\d{4}$";
    NSString *PCWithSpace = @"^1([3-8])\\d{9}";
/*
    NSPredicate *regextestmobile = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", MOBIL];
    NSPredicate *regextestcm = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", CM];
    NSPredicate *regextestcu = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", CU];
 */
    NSPredicate *regextestct = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", PC];
    NSPredicate *regextestct_s = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", PCWithSpace];
    return     /*([regextestmobile evaluateWithObject:self]
             || [regextestcm evaluateWithObject:self]
             || [regextestct evaluateWithObject:self]
             || [regextestcu evaluateWithObject:self]);*/
    [regextestct evaluateWithObject:self]|[regextestct_s evaluateWithObject:self];
}


- (BOOL)isUrl
{

    /*NSString *regex = @"((http|ftp|https)://)(([a-zA-Z0-9\\._-]+\\.[a-zA-Z]{2,6})|([0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}))(:[0-9]{1,4})*(/[a-zA-Z0-9\\&%_\\./-~-]*)?";
    NSPredicate *regextestct = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex];
    return [regextestct evaluateWithObject:self];*/
    NSRange rangeOfHttp = [self rangeOfString:@"http://"];
    NSRange rangeOfHttps = [self rangeOfString:@"https://"];
    return rangeOfHttp.length || rangeOfHttps.length;
}
@end
